BottleH Blog

01.도커(Docker)는 무엇일까?

    Tags

  • Docker
01.도커(Docker)는 무엇일까? thumbnail

01. 도커는 무엇일까?

프로젝트를 진행하며 어렴풋이 알고 있었던 도커를 명확하게 이해하고자 여름휴가 중에😭 정리해봅니다.

1. 도커를 쓰는 이유❓

컨테이너는 결국 환경에 상관없이 어플리케이션을 실행하게 해준다.

예를 들어보자! 도커 없이 redis를 다운받고자 하면 레디스 공식사이트에 가보면 아래와 같은 명령어를 입력하라고 한다.

$ wget https://download.redis.io/releases/redis-6.2.5.tar.gz $ tar xzf redis-6.2.5.tar.gz $ cd redis-6.2.5 $ make

물론 wget이라는 명령어는 찾을 수 없다.

하지만 docker가 설치되어 있으면 OS 등에 관계없이 아래 명령어로 실행이 가능하다.

docker run -it redis

2. 도커❓ 컨테이너❓이미지❓

도커를 알기 전에 컨테이너는 무엇인지부터 알아보자.

2-1. 컨테이너의 정의

  1. 그 안에 다양한 프로그램들을 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순하게 해주는 것

  2. 코드와 모든 종속성을 패키지화하여 응용 프로그램이 여러 환경에서 빠르고 안정적으로 실행되도록 하는 소프트웨어 표준 단위

장점만 정리를 해보자면

  • 보안, 스토리지 및 네트워크 격리
  • 하드웨어 리소스가 덜 필요하다.
  • AWS, GCP 등 다중환경 배포가능
  • 재사용성이 높음

그렇다면 도커는 무엇일까?

2-2. 도커의 정의

컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고 배포하고 실행할 수 있도록 설계된 도구

  • 컨테이너 기반의 오픈소스 가상화 플랫폼, 생태계

2-3. 컨테이너 이미지

컨테이너 이미지는 간단하게 말해서 프로그램을 실행하는데 필요한 설정이나 종속성을 갖고 있는 것이다. 즉, 이미지를 이용해서 컨테이너를 생성한다!

  • 컨테이너는 이미지의 인스턴스라고 볼 수 있다.
  • 이미지가 저장되는 곳은 Registry
Written by@BottleH
Back-End Developer

GitHub